<template>
	<view class="content">
		<image class="logo" src="/static/37logo.png"></image>
		<!-- <view class="text-area">
		</view> -->
		<view class="back" v-if="!is_user_exist"></view>
		<view class="" v-else>
			<!-- 地区选择 -->
			<position-picker @update-region="regionChange"></position-picker>
			<!-- 社区选择 -->
			<community-picker :data="communityList" @update-community="communityChange"></community-picker>
		</view>


		<button class="button" @click="goToMain">登录</button>
	</view>
</template>

<script setup>
	import http from "../../utils/http";
	let is_user_exist = ref(false)
	let user = ref();
	const community = ref("")
	const communityList = ref([])
	//检查当前用户是否存在，不存在则提示“请登录” --> 跳转页面
	function checkUserExist() {
		console.log("111")

	}
	// 接收子组件传过来的community值
	function communityChange(communityValue) {
		community.value = communityValue
		console.log("社区为", community.value)
	}
	// 接收子组件传过来的region值
	function regionChange(regionValue) {
		console.log("地区为", regionValue[0])
		// 1. 查数据库返回communityList
		http.request({
			url: "/api/user/get_community_list",
			method: 'POST',
			data: {
				"province": regionValue[0],
				"city": regionValue[1],
				"district": regionValue[2]

			}
		}).then((responseData) => {
			console.log("communityList", responseData.data)
			communityList.value = responseData.data
		}).catch((err) => {
			// 在这里处理请求失败的情况
			console.log("err", err)
		});
	}
	// 跳转至主页面
	function goToMain() {
		
		if (!is_user_exist.value) {
			uni.showToast({
				icon: "error",
				title: "请先登录",
				duration: 1500,
				complete: function() {
					setTimeout(function() {
						uni.navigateTo({
							url: "/pages/login/login"
						});
					}, 1500); // 延迟1.5秒后跳转
				}
			})
		} else {
			uni.switchTab({
				url: "/pages/home/home"
			})
		}
	}
	onLoad(() => {
		console.log("11")
		uni.login({
			"provider": "weixin",
			// "onlyAuthorize": true, // 微信登录仅请求授权认证
			success: function(loginRes) {
				//客户端成功获取授权临时票据（code）,向业务服务器发起登录请求。
				console.log("code", loginRes.code)
				http.request({
					url: '/api/user/get_user_info',
					method: 'POST',
					data: {
						code: loginRes.code
					}
				}).then((responseData) => {
					getApp().globalData.user = responseData.data
					if(getApp().globalData.user.phone){
						console.log("当前用户已存在数据库中:", getApp().globalData.user)
						is_user_exist.value = true
					}else{
						console.log("当前用户不存在数据库中:", getApp().globalData.user)
						uni.showToast({
							icon: "error",
							title: "未注册",
							duration: 1500,
							complete: function() {
								// setTimeout(function() {
								// 	uni.navigateTo({
								// 		url: "/pages/login/login"
								// 	});
								// }, 1500); // 延迟1.5秒后跳转
							}
						})
					}
					console.log("global", getApp().globalData)
					//  这里应该还去判断用户的社区等信息是否存在，如果不存在可以来个提示绑定一下
				}).catch((err) => {
					// 在这里处理请求失败的情况
					console.log("err", err)
				});
			},
			fail:function(ee){
				console.log("ee", ee)
			}	
		})
		uni.$on('ret', (value) => {
			console.log('接收到的值：', value);
			// 进行相应的处理
			user.phone = value.phone
			console.log("userphone", user)
			http.request({
				url: "/api/user/insert_user",
				method: "post",
				data: {
					user: user
				}
			}).then((responseData) => {
				console.log("插入是否成功", responseData.data)
				is_user_exist.value = true
			}).catch((err) => {
				// 在这里处理请求失败的情况
				console.log("err", err)
			});
		});
	})
	onShow(() => {
	})
	onUnload(() => {
		// 移除监听事件
		console.log("移除监听ret")
		uni.$off('ret');
	})
</script>

<style lang="scss" scoped>
	.content {
		display: flex;
		flex-direction: column;
		align-items: center;
		justify-content: center;
	}

	.logo {
		height: 400rpx;
		width: 400rpx;
		margin-top: 200rpx;
		margin-left: auto;
		margin-right: auto;
		margin-bottom: 50rpx;
	}

	.text-area {
		display: flex;
		justify-content: center;
	}

	.back {
		background-color: antiquewhite;
		font-size: 36rpx;
	}

	.community {
		margin-top: 10rpx;
		background-color: antiquewhite;
		font-size: 36rpx;
	}

	.button {
		width: 400rpx;
		color: rgba(255, 255, 255, 0.6);
		background-color: #ff8000;
		font-size: 36rpx;
		margin: 20rpx;
		/* color: #aa5500; */
	}

	// .is-hover {
	// 	color: rgba(255, 255, 255, 0.6);
	// 	background-color: #f08b49;
	// }

	.position_select {
		width: 100%;
		height: 400rpx;
	}
</style>